using System;
using System.Collections.Generic;
using System.Text;
using Castle.ActiveRecord;

namespace EYDIngenieria.ERP.ObjetosDeNegocio.Dominio
{
    [ActiveRecord]
    public class PlanDeCuenta:ActiveRecordBase<PlanDeCuenta>
    {
        private int id;
        private TipoCuenta tipoCuenta;
        private String nombre;
        private String codigo;

        public PlanDeCuenta(int id, TipoCuenta tipoCuenta, string nombre, string codigo)
        {
            this.id = id;
            this.TipoCuenta = tipoCuenta;
            this.codigo = codigo;
            this.nombre = nombre;
        }

        public PlanDeCuenta():this(0, new TipoCuenta(), string.Empty,string.Empty)
        {
        }

        [Property]
        public String Codigo
        {
            get { return codigo; }
            set { codigo = value; }
        }

        [Property]
        public String Nombre
        {
            get { return nombre; }
            set { nombre = value; }
        }
       
        [PrimaryKey]
        public int Id
        {
            get { return id; }
            set { id = value; }
        }

        [BelongsTo("IdTipoCuenta")]
        public TipoCuenta TipoCuenta
        {
            get { return tipoCuenta; }
            set { tipoCuenta = value; }
        }
    }
}
